using System;

namespace Atomic.Vasp
{
	[Serializable]
	public class VaspParallelization
	{
		internal VaspParallelization()
		{
		}

		/// <summary>
		/// Enable parallelization over bands (NPAR). VASP suggests setting this to the square root of the number of cores.
		/// http://cms.mpi.univie.ac.at/vasp/guide/node138.html
		/// </summary>
		public int? Bands
		{
			get;
			set;
		}

		/// <summary>
		/// Determines the number of compute cores that work on an individual orbital (NCORE). On multicore machines linked
		/// by a fast network it's recommended to set this to the number of cores per node.
		/// http://cms.mpi.univie.ac.at/vasp/vasp/Parallelisation_NPAR_NCORE_LPLANE_KPAR_tag.html
		/// </summary>
		public int? CoresPerOrbital
		{
			get;
			set;
		}
	}
}
